{			Speechintf for Macintalk

AUTHOR
      Pascal Interfaces for MPW modified by Mike Millen
      Copyright 1983, 1984, 1985, 1986 Apple Computer Inc. All Rights Reserved

BUGS

-------------------------------------------------------------------------------}
UNIT	SpeechIntf;

INTERFACE

	USES
		{$U	HD:Interfaces.p:MemTypes.p	}	MemTypes;
	
CONST
	noExcpsFiles = '';			{signals Reader to use only basic rules}
	noReader = 'noReader';		{signals SpeechOn to NOT bring in Reader}
	fullUnitT = -4000;			{error code for driver unit table full}
	
TYPE
	SpeechErr = Integer;
	SpeechRecord  = array [0..99] of byte;	{Driver parm block, used internally}
	SpeechPointer = ^SpeechRecord;			{pointer to driver parm block}
	SpeechHandle  = ^SpeechPointer;			{handle to driver parm block}
	
	Sex 	= (Male, Female);
	F0Mode 	= (Natural, Robotic, NoChange);
	Language= (English, French, Spanish, German, Italian);
	VoiceRecord = RECORD
		theSex:		Sex;
		theLanguage:Language;
		theRate:	Integer;
		thePitch:	Integer;
		theMode:	F0Mode;
		theName:	Str255;
		refCon:		Longint;
				END;
	VoicePtr = ^VoiceRecord;
	
FUNCTION	SpeechOn (ExcpsFile:Str255; VAR theSpeech:SpeechHandle):SpeechErr;
PROCEDURE	SpeechOff(theSpeech: SpeechHandle);
PROCEDURE	SpeechRate(theSpeech: SpeechHandle; theRate:Integer);
PROCEDURE	SpeechPitch(theSpeech: SpeechHandle; thePitch:integer; theMode:F0Mode);
PROCEDURE	SpeechSex(theSpeech: SpeechHandle; theSex:Sex);
FUNCTION	Reader(theSpeech: SpeechHandle; EnglishInput:Ptr;
	InputLength: Longint; PhoneticOutput: Handle):SpeechErr;
FUNCTION	MacinTalk(theSpeech: SpeechHandle; Phonemes: Handle):SpeechErr;

	

END. {of unit}